using System;

namespace Yozeev.Models.TokenAuth
{
    public class AuthenticateResultModel
    {
        public string AccessToken { get; set; }

        public string EncryptedAccessToken { get; set; }

        public int ExpireInSeconds { get; set; }

        public long UserId { get; set; }

        public string UserName { get; set; }

        public bool ShouldResetPassword { get; set; }

        public string PasswordResetCode { get; set; }

        public string ReturnUrl { get; set; }

        /// <summary>
        /// 是否可售票
        /// </summary>
        public bool IsSellTicket { get; set; }
        /// <summary>
        /// 是否可检票
        /// </summary>
        public bool IsCheckTicket { get; set; }
        /// <summary>
        /// 是否可取票
        /// </summary>
        public bool IsCollectionTicket { get; set; }

        /// <summary>
        /// 需要进行账号绑定激活
        /// </summary>
        public bool WaitingForActivation { get; set; }
        /// <summary>
        /// 游客登录Id
        /// </summary>
        public Guid? CustomerId { get; set; }
        /// <summary>
        /// 游客登录Id
        /// </summary>
        public Guid? TravelAgencyId { get; set; }
    }

    public class RefreshTokenModel
    {
        /// <summary>
        /// 是否成功
        /// </summary>
        public bool Success { get; set; }
        /// <summary>
        /// 如果失败，则包含错误信息，成功则为空
        /// </summary>
        public string ErrorMessage { get; set; }
        /// <summary>
        /// token字符串
        /// </summary>
        public string AccessToken { get; set; }
    }
}
